Content Delivery Networks (CDN) are increasingly used to distribute content, such as videos, multimedia, images, audio files, documents, software, and other electronic resources, to end users on behalf of one or more content providers. Typically, a CDN is a large distributed system of servers that are accessible over a network connection (such as the Internet). The servers store the available content and provide the content to users of the CDN through the network connection. Using a CDN allows the content providers to increase the speed and reliability of content delivery without deploying additional infrastructure and additional costs. Moreover, the end users typically obtain the content with fewer delays.
Typically, content provided by a CDN is stored in files of a predetermined length and/or size. For example, video files offered by a CDN may be stored in the CDN as one or more 10-second video files. To obtain the full content, a requesting device requests each file that, when combined, comprises the full requested content. The list of files needed to comprise the full requested content is generally provided to the requesting device through a manifest that is then read to obtain an identification of the files that comprise the full requested content. By reading the manifest, the requesting device requests each file that comprises the desired content and provides the content of each file to a user of the requesting device. However, for large date content, such as live streaming content (content that is provided to the CDN from a content provider as the content is being produced or recorded), the number of needed files to produce the full requested content is often large and may be troublesome for the CDN to store and manage. As such, large amounts of processing power are used by a CDN to maintain, track and store content files on the servers of the CDN.
It is with these and other issues in mind that various aspects of the present disclosure were developed.